package br.com.jk.financeiro.contaBanco;

import br.com.jk.empresa.Empresa;
import br.com.jk.util.pesquisa.Pesquisa.Opcao;
import java.util.List;

/**
 *
 * @author camilo
 */
public interface ContaBancoDao {

  public static final String NAME_TABLE = "conta_banco";
  public static final String NAME_SCHEMA = "financeiro";
  public static final String NAME_COLUMN_ID = "id";
  public static final String NAME_COLUMN_AGENCIA = "agencia";
  public static final String NAME_COLUMN_CONTA = "conta";
  public static final String NAME_COLUMN_EMPRESA = "id_empresa";
  public static final String NAME_COLUMN_DESCRICAO = "descricao";
  public static final String NAME_COLUMN_BANCO = "id_banco";
  public static final String NAME_SEQUENCE = "financeiro.seq_conta_banco";
  public static final String NAME_FK_EMPRESA = "fk_contabanco_empresa";
  public static final String NAME_FK_BANCO = "fk_contabanco_banco";
  public static final String NAME_UK_CONTA_AGENCIA = "uk_contabanco_conta_agencia";

  public void salvar(ContaBanco cotacao);

  public void excluir(ContaBanco cotacao);

  public ContaBanco carregar(int id);

  public ContaBanco carregarConta(String conta);

  public List<ContaBanco> listar();

  public List<ContaBanco> listarPorEmpresa(Empresa empresa);

  public List<ContaBanco> pesquisaPadrao(String property, String criterio, Opcao opcao);

  public List<ContaBanco> pesquisaPadrao(String property, int criterio, Opcao opcao);
}
